package com.cloud.server.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.common.core.base.enums.ApiBaseEnum;
import com.cloud.server.system.dto.QueryUserDTO;
import com.cloud.server.system.dto.UserInputDTO;
import com.cloud.server.system.mapper.entity.SystemUser;
import com.cloud.server.system.vo.SystemUserVO;

import java.util.Map;

/**
 * 用户表 服务类
 *
 * @author zhangxun
 * @since 2020-08-24
 */
public interface IUserService extends IService<SystemUser> {
    /**
     * 查找用户详细信息
     *
     * @param queryUserDTO 用户查询对象，用于传递查询条件
     * @return Ipage
     */
    Map<String, Object> listUser(QueryUserDTO queryUserDTO);

    /**
     * 新增用户
     * @param systemUser
     * @return
     */
    boolean addUser(UserInputDTO systemUser);

    /**
     * 编辑用户
     * @param user
     * @return
     */
    boolean editUser(SystemUser user);

    /**
     * 查找用户
     * @param userId
     * @return
     */
    SystemUser findByUserId(Long userId);

    /**
     * 删除用户
     * @param userIds 用户 id数组
     * @return
     */
    ApiBaseEnum deleteByUserIds(String[] userIds);
}
